package regexppractice;

import java.util.regex.Matcher;
import java.util.regex.Pattern;

/**
 * @description:
 * @author: jhy
 * @time: 2021/6/1 21:00
 */

//结巴去重
//eg：将字符串中的.和重复出现的汉字去掉
public class RegExpDemo8 {

    public static void main(String[] args) {

        String content = "我....我要....学学学学....编程java!";

        //1.首先将所有的点去掉
        Pattern pattern = Pattern.compile("\\.");
        Matcher matcher = pattern.matcher(content);
        //将所有正则表达式匹配到的子串替换为""
        content = matcher.replaceAll("");
        System.out.println(content);

        //2.替换重复出现的字符
        // (1).使用(.)\\1+ 匹配所有出现过两次的数字 --->匹配到 我我 和 学学学学
        // (2).使用外部的反向引用$1来替换匹配到的字符
        pattern = Pattern.compile("(.)\\1+");
        matcher = pattern.matcher(content);
        content = matcher.replaceAll("$1");
        System.out.println(content);
    }
}
